Automated assurance analysis providing feedback to orchestration of resources in virtualization infrastructure

ABSTRACT

At least one processing platform comprises virtualization infrastructure, an assurance module, an orchestration module, and an analytic engine coupled to the assurance module and the orchestration module. The assurance module is configured to monitor resources provided using the virtualization infrastructure under the control of the orchestration module. The analytic engine is configured to process monitoring results from the assurance module and to generate corresponding feedback to the orchestration module. The feedback to the orchestration module is utilized for at least one of adjusting one or more characteristics of the resources provided using the virtualization infrastructure, and performing one or more orchestration operations relating to the resources provided using the virtualization infrastructure. A topology module may be coupled to the analytic engine and configured to generate topology information relating to the resources. The topology information is utilized by the analytic engine in generating the feedback to the orchestration module.

FIELD

The field relates generally to information processing systems, and moreparticularly to techniques for implementing assurance functionality ininformation processing systems comprising virtualization infrastructure.

BACKGROUND

Information processing systems increasingly utilize reconfigurablevirtual resources to meet changing user needs in an efficient, flexibleand cost-effective manner. For example, cloud computing and storagesystems implemented using virtual resources have been widely adopted.More recently, network functions virtualization techniques have beenproposed for use by telecommunication system and cable system serviceproviders. Conventional aspects of such techniques are disclosed inEuropean Telecommunications Standards Institute (ETSI), ETSI GS NFV 001,V1.1.1, “Network Functions Virtualisation (NFV): Use Cases,” October2013, which is incorporated by reference herein. See also theIntroductory and Updated White Papers entitled “Network FunctionsVirtualisation,” presented at the SDN and OpenFlow World Congress, Oct.22-24, 2012 and Oct. 15-17, 2013, respectively, which are incorporatedby reference herein. However, despite these and other recent advances invirtualization techniques, a need remains for further improvements, forexample, with regard to implementation of assurance functionality.

SUMMARY

Illustrative embodiments of the present invention provide automatedassurance analysis and corresponding feedback to orchestration ofresources in network-based information processing systems comprisingvirtualization infrastructure.

In one embodiment, at least one processing platform comprisesvirtualization infrastructure, an assurance module, an orchestrationmodule, and an analytic engine coupled to the assurance module and theorchestration module. The assurance module is configured to monitorresources provided using the virtualization infrastructure under thecontrol of the orchestration module. The analytic engine is configuredto process monitoring results from the assurance module and to generatecorresponding feedback to the orchestration module. The feedback to theorchestration module is utilized for at least one of adjusting one ormore characteristics of the resources provided using the virtualizationinfrastructure, and performing one or more orchestration operationsrelating to the resources provided using the virtualizationinfrastructure.

A topology module may be coupled to the analytic engine and configuredto generate topology information relating to the resources providedusing the virtualization infrastructure. For example, the topologymodule may be configured to collect, store or otherwise providereal-time updated topology information. The topology information isutilized by the analytic engine in generating the feedback to theorchestration module.

These and other illustrative embodiments described herein include,without limitation, methods, apparatus, systems, and articles ofmanufacture comprising processor-readable storage media.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an information processing systemimplementing an analytic engine for automated assurance analysis andcorresponding feedback to orchestration in an illustrative embodiment.

FIG. 2 is a flow diagram of an example process involving the analyticengine in the information processing system of FIG. 1.

FIG. 3 is a block diagram of an information processing systemimplementing an analytic engine for automated assurance analysis andcorresponding feedback to orchestration in another illustrativeembodiment.

FIG. 4 is a flow diagram of an example process involving the analyticengine in the information processing system of FIG. 3.

FIG. 5 is a block diagram of another illustrative embodiment of aninformation processing system incorporating functionality for automatedassurance analysis and corresponding feedback to orchestration.

FIGS. 6 and 7 show examples of processing platforms that may be utilizedto implement at least a portion of each of the systems of FIGS. 1, 3 and5.

DETAILED DESCRIPTION

Illustrative embodiments of the present invention will be describedherein with reference to exemplary information processing systems andassociated computers, servers, storage devices and other processingdevices. It is to be appreciated, however, that embodiments of theinvention are not restricted to use with the particular illustrativesystem and device configurations shown. Accordingly, the term“information processing system” as used herein is intended to be broadlyconstrued, so as to encompass, for example, processing systemscomprising private and public cloud computing or storage systems, aswell as other types of processing systems comprising physical or virtualprocessing resources in any combination.

FIG. 1 shows an information processing system 100 configured inaccordance with an illustrative embodiment of the present invention. Theinformation processing system 100 comprises virtualizationinfrastructure 102, an assurance module 104, an analytic engine 106, andan orchestration module 108. The analytic engine 106 in this embodimentis coupled to the assurance module 104 and the orchestration module 108,and more particularly is arranged between the assurance module 104 andthe orchestration module 108. Each of the modules 104, 106 and 108 isalso coupled to the virtualization infrastructure 102.

The system 100 further comprises a support systems layer 110. Thesupport systems layer 110 illustratively comprises an operations supportsystem (OSS) and a business support system (BSS), both of which areconfigured to interact with each of the assurance module 104, theanalytic engine 106 and the orchestration module 108. The layer 110 istherefore also referred to herein as an OSS/BSS layer 110.

Examples of applications provided by the OSS/BSS layer 110 in thisembodiment include provisioning and configuration applications,inventory management applications, topology service applications, ordermanagement applications, fault management applications and troubleticket system applications. These are examples only, and in otherembodiments only a subset of these applications may be provided, oradditional or alternative sets of applications typically associated withat least one of an OSS and a BSS may be provided. In addition, othersupport system layers in other embodiments may comprise only one of anOSS and a BSS, rather than both an OSS and a BSS as in the FIG. 1embodiment.

The OSS/BSS layer 110 is generally associated with one or more serviceproviders, with the OSS comprising applications that support back-officeactivities of the service providers such as provisioning, operation andmaintenance of a service provider network and associated networkservices, and the BSS comprising applications that supportcustomer-facing activities of the service providers such as billing,order management, customer relationship management, and call centerautomation.

It is to be appreciated, however, that embodiments of the invention arenot limited to use in conjunction with service provider environments.For example, information processing systems of the type described hereincan be adapted for implementation in enterprise environments as well asother types of information technology environments.

The assurance module 104 is configured to monitor resources 112 providedusing the virtualization infrastructure 102 under the control of theorchestration module 108. The resources 112 provided using thevirtualization infrastructure 102 in this embodiment illustrativelyinclude physical, logical, virtual, container, cluster, network,application and service resources. The container and cluster resourcesare collectively referred to herein as container/cluster resources.Again, these particular resources 112 are only examples, and otherembodiments may involve only a subset of these resources, or additionalor alternative sets of resources, as appropriate for a given systemimplementation.

The resources 112 may be viewed as examples of what are also referred toherein as “provisioned resources.” Such resources may be provisioned foruse in conjunction with orchestration operations by the above-notedprovisioning and configuration application of the OSS/BSS layer 110.

The monitoring of the resources 112 by the assurance module 104illustratively includes monitoring in accordance with the ISO-OSI FCAPSnetwork management model, where FCAPS denotes fault, configuration,accounting, performance and security. Other types of monitoring modelsmay be used in addition to or in place of the FCAPS model, including theFAB model, where FAB denotes fulfillment, assurance and billing. Themonitoring in other embodiments need not be in accordance with anyparticular model or models, but could instead involve other types ofresource monitoring. Also, different types of monitoring could beapplied by the assurance module 104 for different types of resources.The term “monitoring” as used herein is therefore intended to be broadlyconstrued.

The analytic engine 106 is configured to process monitoring results fromthe assurance module 104 and to generate corresponding feedback to theorchestration module 108. This feedback generated by the analytic enginecan be used, for example, to adjust one or more characteristics of theresources 112 provided using the virtualization infrastructure 102, andadditionally or alternatively to perform one or more orchestrationoperations relating to the resources 112 provided using thevirtualization infrastructure 102. By way of example, the feedback canbe used to adjust one or more service level agreement (SLA)characteristics of the resources 112. The feedback provided to theorchestration module 108 by the analytic engine 106 can be used in otherways in other embodiments.

The virtualization infrastructure 102 in some embodiments comprisesnetwork functions virtualization (NFV) infrastructure and the resources112 provided using the virtualization infrastructure comprise one ormore virtual network functions (VNFs) of the NFV infrastructure. SuchVNFs illustratively comprise one or more applications with eachapplication implemented utilizing at least one of a virtual machinerunning on the NFV infrastructure and a container running on the NFVinfrastructure. These VNF applications are illustratively part of theapplication resources of resources 112.

The modules 104, 106 and 108 and other components of the system 100illustratively communicate with one another over one or more operatornetworks or other service provider networks. At least parts of one ormore of such service provider networks, or other networks utilized inother embodiments, may illustratively comprise, for example, a globalcomputer network such as the Internet, a wide area network (WAN), alocal area network (LAN), a satellite network, a telephone or cablenetwork, a cellular network, a wireless network implemented using awireless protocol such as WiFi or WiMAX, or various portions orcombinations of these and other types of communication networks.

At least portions of the information processing system 100 areimplemented using one or more processing platforms, examples of whichwill be described in greater detail below in conjunction with FIGS. 6and 7. A given such processing platform comprises at least oneprocessing device comprising a processor coupled to a memory, and theprocessing device may be implemented at least in part utilizing one ormore virtual machines, containers or other virtualizationinfrastructure.

A given processing platform utilized to implement at least a portion ofthe information processing system 100 illustratively comprises one ormore storage systems such as VNX® and Symmetrix VMAX®, both commerciallyavailable from EMC Corporation of Hopkinton, Mass. Other types ofstorage elements can be used in implementing an information processingsystem or portions thereof, including scale-out network attached storage(NAS) clusters implemented, for example, using Isilon® storageplatforms, such as storage platforms comprising Isilon® platform nodesand associated accelerators in the S-Series, X-Series and NL-Seriesproduct lines, also commercially available from EMC Corporation. A widevariety of other storage products can be used to implement at leastportions of an information processing system as disclosed herein.

It should be understood that the particular sets of modules and othercomponents implemented in the system 100 as illustrated in FIG. 1 arepresented by way of example only. In other embodiments, only subsets ofthese components, or additional or alternative sets of components, maybe used, and such components may exhibit alternative functionality andconfigurations.

The operation of the information processing system 100 will now bedescribed in further detail with reference to the flow diagram of FIG.2. The process as shown includes steps 200 through 206, and is describedwith reference to components of the system 100 but is more generallyapplicable to other systems comprising an assurance module, analyticengine and orchestration module arranged as disclosed herein.

In step 200, resources of virtualization infrastructure 102 areprovisioned for use by the orchestration module 108. For example, aprovisioning and configuration application of the OSS/BSS layer 110 maybe operative to provision particular resources 112 of the virtualizationinfrastructure 102 for use by the orchestration module 108. Othertechniques for provisioning resources of the virtualizationinfrastructure 102 for use in subsequent orchestration by theorchestration module 108 may be used.

In step 202, the orchestration module 108 controls orchestration of theprovisioned resources 112 of the virtualization infrastructure 102. Forexample, the orchestration module 108 may combine or otherwise arrangeparticular ones of the resources 112 to provide a particular service toan end user within the system 100. Portions of the provisioned resourcesthat are utilized by the orchestration module 108 to orchestrateservices within the system 100 are also referred to herein as“orchestrated resources.” The orchestrated resources may comprise all oronly a subset of the provisioned resources 112. All such resources inthe present embodiment, whether unprovisioned, provisioned ororchestrated, are assumed to be provided by the virtualizationinfrastructure 102.

The term “orchestration” as used herein is intended to be broadlyconstrued so as to encompass such arrangements as well as alternativetechniques for controlling initiation of services utilizing combinationsor other arrangements of selected ones of a plurality of provisionedresources.

Also, the term “end user” may refer, for example, to respective humanusers of the system 100, such as customers of one or moretelecommunication system or cable system service providers, although theterm “end user” as utilized herein is intended to be more broadlyconstrued so as to encompass numerous other arrangements of human,hardware, software or firmware entities, as well as combinations of suchentities.

In step 204, the assurance module 104 monitors the orchestratedresources provided using the virtualization infrastructure 102. Thisillustratively involves monitoring characteristics of at least a portionof the resources 112 in accordance with the FCAPS network managementmodel, although as indicated previously other models or various types ofcustom monitoring of particular resources may be used. Results of thismonitoring are provided by the assurance module to the analytic engine106.

In step 206, the analytic engine 106 processes the results of themonitoring by the assurance module 104 to generate correspondingfeedback to the orchestration module 108. This feedback generated by theanalytic engine 106 is used, for example, to adjust one or more SLAcharacteristics or other characteristics of the resources 112 providedusing the virtualization infrastructure 102, and additionally oralternatively to perform one or more orchestration operations relatingto the resources 112. Again, the feedback provided to the orchestrationmodule 108 by the analytic engine 106 can be used in other ways in otherembodiments. Moreover, the particular resources 112 adjusted or subjectto orchestration operations based at least in part on the feedback fromthe analytic engine 106 are not limited to orchestrated resources.

By way of example, the analytic engine 106 in some embodiments isconfigured to generate the feedback to the orchestration module 108responsive to monitoring results indicative of at least one of anavailability failure in a specified resource and a performance failurein a specified resource. Numerous other types of monitoring results maybe processed by the analytic engine 106 in generating the feedback tothe orchestration module 108.

As another example, the analytic engine 106 in some embodiments isconfigured to generate the feedback to the orchestration module 108 atleast in part in the form of information specifying one or morecorrective actions to be taken by the orchestration module 108 torecover from at least one SLA violation.

Such corrective actions may relate, for example, to SLA violations thatare due to availability failures in physical resources such as compute,storage or network resources, availability failures in a virtualizationlayer that overlies the physical resources, and performance failuressuch as degradation in available network bandwidth or in availableprocessor or memory resources on a virtual machine or other computenode.

It should be noted, however, that the feedback is not limited tospecifying corrective actions to be taken by the orchestration module108. For example, the feedback can be used by the orchestration module108 solely for orchestration of new services, instead of correcting orotherwise adjusting previously-orchestrated services.

In the present embodiment, the analytic engine 106 may be configured todetermine actual resource state relative to a desired resource state andto generate the feedback to the orchestration module 108 such that theactual resource state is automatically driven toward the desiredresource state by the orchestration module 108. The system 100 in suchan arrangement illustratively implements a feedback path from resources112 to orchestration module 108 involving automated assurance analysisprovided by analytic engine 106 based at least in part on monitoringresults provided by assurance module 104.

From step 206, the FIG. 2 process flow illustratively returns to step202 for performance of additional orchestration relating to provisionedresources. These can include previously-orchestrated resources as wellas other provisioned resources that have not previously beenorchestrated. Other types of flows between particular process steps canbe included in other embodiments.

The particular processing operations and other system functionalitydescribed in conjunction with the flow diagram of FIG. 2 are presentedby way of illustrative example only, and should not be construed aslimiting the scope of the invention in any way. Alternative embodimentscan use other types of processing operations involving automatedassurance analysis and corresponding feedback to orchestration in aninformation processing system. For example, the ordering of the processsteps may be varied in other embodiments, or certain steps may beperformed concurrently with one another rather than serially. Also, oneor more of the process steps may be repeated periodically for differentprocessing applications, or performed in parallel with one another.

It is to be appreciated that functionality such as that described inconjunction with the flow diagram of FIG. 2 can be implemented at leastin part in the form of one or more software programs stored in memoryand executed by a processor of a processing device such as a computer orserver. As will be described below, a memory or other storage devicehaving executable program code of one or more software programs embodiedtherein is an example of what is more generally referred to herein as a“processor-readable storage medium.”

An illustrative embodiment including a topology module will now bedescribed with reference to FIG. 3. In this embodiment, an informationprocessing system 300 comprises an assurance module 304, a topologymodule 305, an analytic engine 306 and an orchestration module 308. Theorchestration module 308 in this embodiment is more particularlyimplemented as a management and orchestration (“M & 0”) module, which isconsidered an example of what is more generally referred to herein as an“orchestration module.” The modules 305, 306 and 308 are each coupled toan OSS/BSS layer 310.

The system 300 is assumed to include virtualization infrastructuresimilar to that previously described in the context of system 100, butsuch virtualization infrastructure is not explicitly shown in FIG. 3.The virtualization infrastructure in the FIG. 3 embodiment is furtherassumed to comprise NFV infrastructure.

The assurance module 304 is coupled to both the topology module 305 andthe analytic engine 306. The assurance module 304 is configured tomonitor resources 312 that illustratively include physical, logical,virtual, container/cluster, network, application and service resources.The application resources in this embodiment are assumed to moreparticularly comprise VNF resources implemented as respective VNFapplications as described previously, each utilizing at least one of avirtual machine running on the NFV infrastructure and a containerrunning on the NFV infrastructure. These VNF applications areillustratively part of the application resources of resources 312.

The topology module 305 is configured to generate topology informationrelating to the resources 312 provided using the virtualizationinfrastructure. For example, the topology information may comprise atopological view of at least a portion of the resources 312. Thetopology module 305 is coupled between the assurance module 304 and theanalytic engine 306 and can generate topology information throughinteraction with the resources 312. Additionally or alternatively, suchtopology information can be generated at least in part utilizinginformation provided by the assurance module 304. The topologyinformation generated by the topology module 305 is illustrativelyutilized by the analytic engine 306 in generating feedback to theorchestration module 308.

In some embodiments, the topology module 305 is configured to collect,store or otherwise provide real-time updated topology information. Theseand similar operations are assumed to be encompassed by references to“generation” of topology information as that term is broadly utilizedherein. Numerous other techniques for generation of topology informationmay be implemented in other embodiments.

The topology information in the FIG. 3 embodiment may comprise, forexample, metadata characterizing relationships between differentresource types. The different resource types may comprise the individualresource types listed in the figure, as well as various combinations orsubsets of these resources. For example, certain resources such asapplication resources and service resources may be grouped together forpurposes of generating at least a portion of the topology information.

Also, each resource type may itself comprise multiple distinct resourcecategories. For example, resources falling with the physical resourcetype may include compute, network and storage resources. As anotherexample, resources falling within the virtual resources category mayinclude virtual machines, hypervisors and software-defined networks(SDNs).

At least portions of the metadata can be derived from one or more graphdatabases relating to all or a subset of the resources 312 where suchgraph databases are incorporated in, maintained by or otherwiseaccessible to the topology module 305. Numerous other types of topologyinformation may be used in other embodiments.

At least portions of the topology information generated by the topologymodule 305 are illustratively configured to reflect an “in-life” viewprovided by the assurance module 304 based on its monitoring of theresources 312 in accordance with the FCAPS model and other possiblemonitoring models.

The topology module 305 is also accessible to the orchestration module308 in this embodiment, such that the topology information can beutilized by the orchestration module 308 in performing one or moreorchestration operations relating to the resources 312 provided usingthe virtualization infrastructure.

The topology module 305 can also be leveraged by other systemcomponents, such as provisioning and configuration, inventory managementand other applications of the OSS/BSS layer 310.

The topology module 305 in the FIG. 3 embodiment provides centralizedviews of the topology of the resources 312 and advantageously avoidsproblems associated with conventional topology database arrangements inwhich multiple topology databases or portions thereof as well asdifferent types of topology views associated with different types ofresources are widely distributed over numerous distinct systems, devicesand other components.

As illustrated in the figure, the analytic engine 306 in this embodimentmore particularly comprises a policy engine 314 implementing one or morepolicy rules, a remediation module 315 implementing add, modify anddelete functionality, one or more predictive algorithms 316, and a rootcause analysis (RCA) module 317. At least a subset of the components314, 315, 316 and 317 are utilized by the analytic engine 306 ingenerating the above-noted feedback to the orchestration module 308.

For example, the policy engine 314 is illustratively configured tocontrol policies and associated policy rules relating to orchestrationas well as customer characterization, SLA management, and otherpolicy-driven analysis functions.

One or more of the components 314, 315, 316 and 317 of the analyticengine 306 can be utilized to determine actual resource state relativeto a desired resource state and to generate the feedback to theorchestration module 308 such that the actual resource state isautomatically driven toward the desired resource state by theorchestration module 308.

The analytic engine 306 in the present embodiment completes a feedbackloop between the assurance module 304 and the orchestration module 308that facilitates orchestration of the resources 312 provided by thevirtualization infrastructure. It can be advantageously configured toprovide fully automated assurance analysis of monitoring resultsprovided by the assurance module 304. For example, it can utilize faultand performance monitoring results from the assurance module 304 incombination with the topology information from the topology module 305to provide intelligent feedback to the orchestration module 308identifying corrective actions to be taken by the orchestration module308 in order to recover from SLA violations or other issues.

The orchestration module 308 of the information processing system 300further comprises a number of distinct components, illustrativelyincluding in the present embodiment a service orchestration component318, a VNF manager 319, and at least one of an infrastructure manager ora container/cluster management component, both collectively identifiedby reference numeral 320. At least a subset of these components caninteract with the topology module 305, as indicated by dashed line 322.Numerous other arrangements of one or more components can be used toimplement an orchestration module as that term is broadly used herein.For example, one possible alternative implementation of orchestrationmodule 308 can include only a subset of the service orchestrationcomponent 318, the VNF manager 319 and the infrastructure manager andcontainer/cluster manager component 320.

The operation of the information processing system 300 is illustrated inthe flow diagram of FIG. 4. The process as shown includes steps 400through 406, which are substantially the same as respective steps 200through 206 as previously described in conjunction with FIG. 2, butsteps 400 through 406 are illustratively performed in this embodiment bythe OSS/BSS layer 310, orchestration module 308, assurance module 304and analytic engine 306, respectively. The FIG. 4 process furthercomprises an additional step 408, in which topology module 305 generatestopology information relating to the orchestrated resources providedusing the virtualization infrastructure. Step 408 in the flow diagram asillustrated can be entered from step 402 or step 406, and returns backto step 406. However, numerous alternative flows between the processsteps are possible.

Like the FIG. 2 process, the FIG. 4 process is more generally applicableto other systems comprising an assurance module, analytic engine andorchestration module arranged as disclosed herein. Also, its particularprocessing operations and other system functionality are presented byway of illustrative example only, and should not be construed aslimiting the scope of the invention in any way. Furthermore,functionality such as that described in conjunction with the flowdiagram of FIG. 4 can be implemented at least in part in the form of oneor more software programs stored in memory and executed by a processorof a processing device such as a computer or server. As mentionedpreviously, a memory or other storage device having executable programcode of one or more software programs embodied therein is an example ofwhat is more generally referred to herein as a “processor-readablestorage medium.”

Referring now to FIG. 5, another illustrative embodiment is shown. Inthis embodiment, an information processing system 500 comprises NFVinfrastructure 502 and an orchestration module 508 that is moreparticularly implemented as an orchestration and provisioning module,which is considered an example of what is more generally referred toherein as an “orchestration module.” The orchestration module 508orchestrates a plurality of resources provided by the NFV infrastructure502. These include VNF resources that include VNF applications denotedas 512-1 through 512-N.

The NFV infrastructure 502 and the orchestration module 508 are part ofa pod 520 that also includes a service assurance and remediation module522. The module 522 is considered to comprise assurance and remediationcomponents that are viewed as respective examples of what are moregenerally referred to herein as an assurance module and an analyticengine. Thus, the remediation component of the module 522 is assumed tocomprise an analytic engine of the type previously described herein,configured to process monitoring results from the assurance componentand to generate corresponding feedback for use by the orchestrationmodule 508. Also associated with the pod 520 is an overlying globalmanagement layer 524 which can be configured to provide support systemfunctionality similar to that provided by the OSS/BSS layers 110 and 310of respective FIGS. 1 and 3.

The VNF applications 512-1 through 512-N are also referred to herein asrespective VNF workloads of the NFV infrastructure 502, although othertypes of VNF workloads can be used in other embodiments. Each VNFapplication 512 can be implemented using one or more virtual machines ofthe NFV infrastructure 502 and additionally or alternatively one or morecontainers of the NFV infrastructure 502. These virtual machines orcontainers are part of virtual resources 530 of the NFV infrastructure502 and illustratively include one or more virtual compute, network orstorage resources. The virtual resources 530 are controlled by avirtualization layer 532 that runs on underlying hardware 534 whichillustratively comprises physical hosts/servers, physical networkresources and physical storage resources.

The NFV infrastructure 502 comprising virtual resources 530,virtualization layer 532 and hardware 534 may be collectively viewed asone example of what is more generally referred to herein as“virtualization infrastructure.” At least portions of the VNF workloadsmay also be considered to be encompassed by the term “virtualizationinfrastructure” as that term is broadly used herein. Other types ofvirtualization infrastructure can be used in other embodiments,including the example processing platform of FIG. 6.

As noted above, the VNF workloads in this embodiment are assumed tocomprise respective applications 512 running on one or more virtualmachines of the virtualization infrastructure or inside containers ofthe virtualization infrastructure.

The VNF workloads are controlled at least in part by orchestrationmodule 508 responsive to feedback from the service assurance andremediation module 522. Additional control functionality is provided bythe global management layer 524.

The service assurance and remediation module 522 in this embodimentprovides functionality at the pod level. In a given data center, theremay be multiple pods 520, possibly geographically distributed, with eachsuch pod incorporating functionality similar to that previouslydescribed in conjunction with the embodiments of FIGS. 1 and 3 but at apod scale. The global management layer 524 manages these potentiallygeographically distributed pods, which may be connected by differenttypes of networks, again using functionality similar to that previouslydescribed.

In the FIG. 5 embodiment, service provider customers or other end usersof the system 500 leverage the orchestration module 508 to provision VNFworkloads and the underlying infrastructure resources supporting thoseworkloads. Once the VNF workloads are deployed, the assurance componentof module 522 proactively monitors the provisioned resources to supportthe corresponding VNF services against a specified set of SLAs. If anSLA is violated, the assurance component notifies the remediationcomponent comprising the analytic engine, which automatically generatesfeedback to the orchestration module to address the detected SLAviolation.

As mentioned previously in the context of system 100, the particulararrangements of modules and other components of the systems 300 and 500described herein are similarly considered illustrative examples only,and should not be construed as limiting in any way. Numerous alternativearrangements of modules and other components can be used in otherembodiments.

It was noted above that portions of the information processing system100 may be implemented using one or more processing platforms.Illustrative embodiments of such platforms will now be described ingreater detail. Although described in the context of system 100, theseplatforms may also be used to implement at least portions of theinformation processing systems of FIGS. 3 and 5, as well as otherinformation processing systems in other embodiments of the invention.

As shown in FIG. 6, portions of the information processing system 100may comprise cloud infrastructure 600. The cloud infrastructure 600comprises virtual machines (VMs) 602-1, 602-2, . . . 602-L implementedusing a hypervisor 604. The hypervisor 604 runs on physicalinfrastructure 605. The cloud infrastructure 600 further comprises setsof applications 610-1, 610-2, . . . 610-L running on respective ones ofthe virtual machines 602-1, 602-2, . . . 602-L under the control of thehypervisor 604.

Although only a single hypervisor 604 is shown in the embodiment of FIG.6, the system 100 may of course include multiple hypervisors eachproviding a set of virtual machines using at least one underlyingphysical machine. Different sets of virtual machines provided by one ormore hypervisors may be utilized in configuring multiple instances of aburst buffer appliance or other component of the system 100.

An example of a commercially available hypervisor platform that may beused to implement hypervisor 604 and possibly other portions of theinformation processing system 100 in one or more embodiments of theinvention is the VMware® vSphere® which may have an associated virtualinfrastructure management system such as the VMware® vCenter™. Theunderlying physical machines may comprise one or more distributedprocessing platforms that include storage products, such as theabove-noted VNX® and Symmetrix VMAX®. A variety of other storageproducts may be utilized to implement at least a portion of the system100.

One or more of the processing modules or other components of system 100may therefore each run on a computer, server, storage device or otherprocessing platform element. A given such element may be viewed as anexample of what is more generally referred to herein as a “processingdevice.” The cloud infrastructure 600 shown in FIG. 6 may represent atleast a portion of one processing platform. Another example of such aprocessing platform is processing platform 700 shown in FIG. 7.

The processing platform 700 in this embodiment comprises a portion ofsystem 100 and includes a plurality of processing devices, denoted702-1, 702-2, 702-3, . . . 702-K, which communicate with one anotherover a network 704.

The network 704 may comprise any type of network, including by way ofexample an operator network or other service provider network. At leastparts of these or other networks utilized in embodiments of theinvention may comprise, for example, a global computer network such asthe Internet, a WAN, a LAN, a satellite network, a telephone or cablenetwork, a cellular network, a wireless network such as a WiFi or WiMAXnetwork, or various portions or combinations of these and other types ofnetworks.

The processing device 702-1 in the processing platform 700 comprises aprocessor 710 coupled to a memory 712.

The processor 710 may comprise a microprocessor, a microcontroller, anapplication-specific integrated circuit (ASIC), a field-programmablegate array (FPGA) or other type of processing circuitry, as well asportions or combinations of such circuitry elements. Such hardwareelements in some embodiments may illustratively comprise commodityhardware elements utilized in a processing platform comprisingvirtualization infrastructure.

The memory 712 may comprise random access memory (RAM), read-only memory(ROM) or other types of memory, in any combination. The memory 712 andother memories disclosed herein should be viewed as illustrativeexamples of what are more generally referred to as “processor-readablestorage media” storing executable program code of one or more softwareprograms.

Articles of manufacture comprising such processor-readable storage mediaare considered embodiments of the present invention. A given sucharticle of manufacture may comprise, for example, a storage device suchas a storage disk, a storage array or an integrated circuit containingmemory. The term “article of manufacture” as used herein should beunderstood to exclude transitory, propagating signals.

Also included in the processing device 702-1 is network interfacecircuitry 714, which is used to interface the processing device with thenetwork 704 and other system components, and may comprise conventionaltransceivers.

The other processing devices 702 of the processing platform 700 areassumed to be configured in a manner similar to that shown forprocessing device 702-1 in the figure.

Again, the particular processing platform 700 shown in the figure ispresented by way of example only, and system 100 may include additionalor alternative processing platforms, as well as numerous distinctprocessing platforms in any combination, with each such platformcomprising one or more computers, servers, storage devices or otherprocessing devices.

It should therefore be understood that in other embodiments differentarrangements of additional or alternative elements may be used. At leasta subset of these elements may be collectively implemented on a commonprocessing platform, or each such element may be implemented on aseparate processing platform.

Also, numerous other arrangements of computers, servers, storage devicesor other components are possible in the information processing system100. Such components can communicate with other elements of theinformation processing system 100 over any type of network or othercommunication media.

As indicated previously, components of an information processing systemas disclosed herein can be implemented at least in part in the form ofone or more software programs stored in memory and executed by aprocessor of a processing device such as one of the virtual machines 602or one of the processing devices 702. For example, one or more of theassurance module 104, analytic engine 106 and orchestration module 108in the FIG. 1 embodiment are illustratively implemented at least in partin the form of software.

It should again be emphasized that the above-described embodiments ofthe invention are presented for purposes of illustration only. Manyvariations and other alternative embodiments may be used. For example,the disclosed techniques are applicable to a wide variety of other typesof information processing systems, modules and components that canbenefit from functionality for automated assurance analysis andcorresponding feedback to orchestration of provisioned resources. Also,the particular configurations of system and device elements shown inFIGS. 1, 3 and 5-7 and the particular process operations of FIGS. 2 and4 can be varied in other embodiments. Thus, for example, the particulartypes and arrangements of modules and other components deployed in agiven embodiment and their respective configurations may be varied.Moreover, the various assumptions made above in the course of describingthe illustrative embodiments should also be viewed as exemplary ratherthan as requirements or limitations of the invention. Numerous otheralternative embodiments within the scope of the appended claims will bereadily apparent to those skilled in the art.

What is claimed is:
 1. An apparatus comprising: at least one processingplatform comprising: virtualization infrastructure; and at least oneprocessing device comprising a processor coupled to a memory; whereinthe at least one processing device is configured: to orchestrate one ormore virtual network functions to be provided using network functionsvirtualization of the virtualization infrastructure, a given one of thevirtual network functions comprising one or more applicationsimplemented utilizing at least one of a virtual machine running on thevirtualization infrastructure and a container running on thevirtualization infrastructure; to generate topology information relatingto the virtual network functions provided using the virtualizationinfrastructure, the topology information comprising metadata derivedfrom one or more graph databases, the metadata characterizingrelationships between different resource types utilized to orchestratethe virtual network functions, the different resource types comprisingphysical resources and virtual resources; to monitor the orchestratedvirtual network functions as provided using the virtualizationinfrastructure; to process results of monitoring of the orchestratedvirtual network functions utilizing the generated topology informationto determine an actual state of the virtual network functions relativeto a desired state of the virtual network functions and to generatecorresponding feedback identifying one or more orchestration actions forautomatically driving the actual state of the virtual network functionstoward the desired state of the virtual network functions; andresponsive to the feedback, to perform the identified orchestrationactions, the identified orchestration actions comprising at least oneof: (i) adjusting one or more characteristics of the virtual networkfunctions provided using the virtualization infrastructure; and (ii)performing one or more orchestration operations relating to the virtualnetwork functions provided using the virtualization infrastructure; andwherein the feedback further identifies one or more additionalorchestration actions to be utilized in orchestrating one or moreadditional virtual network functions.
 2. The apparatus of claim 1wherein the virtualization infrastructure comprise one or more ofphysical, logical, virtual, container, cluster, network, application andservice resources.
 3. The apparatus of claim 1 wherein the at least oneprocessing device is configured to generate the feedback responsive tomonitoring results indicative of at least one of an availability failurein one or more specified physical and virtual resources implementing atleast one of the virtual network functions and a performance failure ina specified one of the virtual network functions.
 4. The apparatus ofclaim 1 wherein the at least one processing device is configured togenerate the feedback at least in part in the form of informationspecifying one or more corrective actions to be taken to recover from atleast one service level agreement violation.
 5. The apparatus of claim 1further comprising a support systems layer comprising at least one of anoperations support system and a business support system.
 6. Theapparatus of claim 1 wherein the processing results of the monitoringcomprises one or more of: controlling policies and one or moreassociated policy rules relating to orchestration of the virtual networkfunctions to be provided using the virtualization infrastructure; andimplementing add, modify and delete functionality for the orchestratedvirtual network functions.
 7. An information processing systemcomprising the apparatus of claim
 1. 8. A method comprising:orchestrating one or more virtual network functions to be provided usingnetwork functions virtualization of a virtualization infrastructure, agiven one of the virtual network functions comprising one or moreapplications implemented utilizing at least one of a virtual machinerunning on the virtualization infrastructure and a container running onthe virtualization infrastructure; generating topology informationrelating to the virtual network functions provided using thevirtualization infrastructure, the topology information comprisingmetadata derived from one or more graph databases, the metadatacharacterizing relationships between different resource types utilizedto orchestrate the virtual network functions, the different resourcetypes comprising physical resources and virtual resources; monitoringthe orchestrated virtual network functions as provided using thevirtualization infrastructure; processing results of the monitoring ofthe orchestrated virtual network functions utilizing the generatedtopology information to determine an actual state of the virtual networkfunctions relative to a desired state of the virtual network functionsand to generate corresponding feedback identifying one or moreorchestration actions for automatically driving the actual state of thevirtual network functions toward the desired state of the virtualnetwork functions; and responsive to the feedback, performing theidentified orchestration actions, the identified orchestration actionscomprising at least one of: (i) adjusting one or more characteristics ofthe virtual network functions provided using the virtualizationinfrastructure; and (ii) performing one or more orchestration operationsrelating to the virtual network functions provided using thevirtualization infrastructure; wherein the feedback further identifiesone or more additional orchestration actions to be utilized inorchestrating one or more additional virtual network functions; andwherein the method is implemented using at least one processing devicecomprising a processor coupled to a memory.
 9. The method of claim 8wherein processing results of the monitoring to generate correspondingfeedback comprises generating the feedback responsive to monitoringresults indicative of at least one of an availability failure in one ormore specified physical and virtual resources implementing at least oneof the virtual network functions and a performance failure in aspecified one of the virtual network functions.
 10. The method of claim8 wherein processing results of the monitoring to generate correspondingfeedback comprises generating information specifying one or morecorrective actions to be taken to recover from at least one servicelevel agreement violation.
 11. An article of manufacture comprising aprocessor-readable storage medium having stored therein program code ofone or more software programs, wherein the program code when executed byat least one processing device causes said processing device: toorchestrate one or more virtual network functions to be provided usingnetwork functions virtualization of a virtualization infrastructure, agiven one of the virtual network functions comprising one or moreapplications implemented utilizing at least one of a virtual machinerunning on the virtualization infrastructure and a container running onthe virtualization infrastructure; to generate topology informationrelating to the virtual network functions provided using thevirtualization infrastructure, the topology information comprisingmetadata derived from one or more graph databases, the metadatacharacterizing relationships between different resource types utilizedto orchestrate the virtual network functions, the different resourcetypes comprising physical resources and virtual resources; to monitorthe orchestrated virtual network functions as provided using thevirtualization infrastructure; to process results of the monitoring ofthe orchestrated virtual network functions utilizing the generatedtopology information to determine an actual state of the virtual networkfunctions relative to a desired state of the virtual network functionsand to generate corresponding feedback identifying one or moreorchestration actions for automatically driving the actual state of thevirtual network functions toward the desired state of the virtualnetwork functions; and responsive to the feedback, to perform theidentified orchestration actions, the identified orchestration actionscomprising at least one of: (i) adjusting one or more characteristics ofthe virtual network functions provided using the virtualizationinfrastructure; and (ii) performing one or more orchestration operationsrelating to the virtual network functions provided using thevirtualization infrastructure; wherein the feedback further identifiesone or more additional orchestration actions to be utilized inorchestrating one or more additional virtual network functions.
 12. Theapparatus of claim 1 wherein the generated topology informationcomprises a topological view of the at least a portion of the physicalresources and the virtual resources utilized to orchestrate the virtualnetwork functions.
 13. The apparatus of claim 12 wherein the physicalresources comprise compute, network and storage resources, and whereinthe virtual resources comprise virtual machines, hypervisors andsoftware-defined networks.
 14. The apparatus of claim 1 wherein thegenerated topology information comprises a topological view of thevirtual network functions based on monitoring the orchestrated virtualnetwork functions in accordance with a monitoring model.
 15. Theapparatus of claim 14 wherein the monitoring model comprises at leastone of: a fault, configuration, accounting, performance and securitymodel; and a fulfillment, assurance and billing model.
 16. The method ofclaim 8 wherein the generated topology information comprises atopological view of the virtual network functions based on monitoringthe orchestrated virtual network functions in accordance with amonitoring model.
 17. The method of claim 16 wherein the monitoringmodel comprises at least one of: a fault, configuration, accounting,performance and security model; and a fulfillment, assurance and billingmodel.
 18. The article of manufacture of claim 11 wherein the generatedtopology information comprises a topological view of the virtual networkfunctions based on monitoring the orchestrated virtual network functionsin accordance with a monitoring model.
 19. The article of manufacture ofclaim 18 wherein the monitoring model comprises at least one of: afault, configuration, accounting, performance and security model; and afulfillment, assurance and billing model.
 20. The article of manufactureof claim 11 wherein the generated topology information comprises atopological view of the at least a portion of the physical resources andthe virtual resources utilized to orchestrate the virtual networkfunctions.